﻿
namespace FamilyBook.Core.Services
{
    public interface IGeneralService<in TBaseEntity, in TBaseEntityId> 
        where TBaseEntity : class
    {
        TEntity Create<TEntity>(TEntity entityInstance) where TEntity : class, TBaseEntity;
        TEntity GetDetails<TEntity>(TBaseEntityId entityId) where TEntity : class, TBaseEntity;
        void Update<TEntity>(TEntity entityInstance) where TEntity : class, TBaseEntity;
        void Delete<TEntity>(TBaseEntityId entityId) where TEntity : class, TBaseEntity;
        void Delete<TEntity>(TEntity entityInstance) where TEntity : class, TBaseEntity;
    }
}